Skip to content

Conversation

@jesswrd
Copy link
Contributor

@jesswrd jesswrd commented Oct 29, 2025

Updated the Gradle version formatting validation with a stricter regex. Previously passed on invalid versions.

Pre-Review Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.

Footnotes

  1. Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. 2 3

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the Gradle version validation to use a more specific regular expression and provides a more detailed error message for invalid formats. The corresponding tests have been improved to cover more invalid version scenarios. While these changes are good, a new constant agpForExamples has been added but is not used anywhere in the command's logic, which should be addressed.

@jesswrd jesswrd changed the title update gradle regex format validation Update Gradle Version Formatting Validation Oct 29, 2025
@jesswrd jesswrd requested a review from a team October 30, 2025 17:46
'A version with a valid format (maximum 2-3 numbers separated by period) must be provided.');
printError('''
A version with a valid format (maximum 2-3 numbers separated by 1-2 periods) must be provided.
1. The first number must have a single digit
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the other conditions are reasonable, but I think given that we are currently on gradle 9 we may come to regret implementing this first condition. I think we should wait till the release after gradle 9 to see where they go with version numbering to avoid shooting ourselves in the foot here.

Also, I don't know the history of this code, but is there a reason we don't allow release candidates here? Fixing this wouldn't be blocking (as the old regex doesn't allow it either, so this is an improvement regardless), but for ex 9.1.0-rc-4 is indeed a valid gradle version, though neither regex here considers it so.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I realize we are on Gradle 9 now and Gradle 10 would probably break that first condition. I can just make the change now to allow for 1-2 digits. I originally figured that the change could be made once Gradle 10 actually rolled around.

As for release candidates—I think the main use case of update_dependency_command is to give us on the Android team an easy way of bulk updating android dependencies in packages whenever the flutter/flutter templates get updated. I don't think we really use release candidates versioning for templates?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the main use case of update_dependency_command is to give us on the Android team an easy way of bulk updating android dependencies in packages whenever the flutter/flutter templates get updated. I don't think we really use release candidates versioning for templates?

I was not familiar with this command/tool but that makes sense

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants